home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Just Call Me Internet
/
Just Call Me Internet.iso
/
com
/
othernet
/
fidonet
/
plst160
/
parselst.doc
< prev
next >
Wrap
Text File
|
1993-03-12
|
34KB
|
873 lines
+---+-------------------------------
| o |
| | Zone,1,Intl_FidoNet_Co,Phoeni
| o | ,1,FidoNews,FidoNews_Editor,D
ParseLst Version 1.52 | | ,2,Euro_Gate,Portland_OR,Rand
| o | ,3,OZ_Gate,Portland_OR,Randy_
Original Nodelist Processing | | ,10,Int'l_FNet_Assn,St_Louis_
Program by Bob Hartman | o | ,11,IFNA_Finance,Honolulu_HI,
| | ,12,IFNA_Legal,Parsippany_NJ,
TOS/MultiTOS revision | o | ,16,IFNA_Mem._Data,Clevland_O
to 1.5 by Bryan Hall | | ,17,IFNA_Mem._Info,Clevland_O
| o | ,20,Fido_Tech_Stand,Portland_
Documentation Written | | ,100,General_Help,Clifton_NJ,
by Alan Applegate | o | ,102,BinkleyTERM_Help,Chattan
revised by Bryan Hall | | ,113,OPUS_Info,Chico_CA,Doug_
| o | ,114,Quick_BBS_Help,Floral_Pa
NOTE: This documentation | | ,116,Dutchie_Help,CapeGirarde
pertains only to the | o | ,117,Fido_Help,San_Jose_CA,Jo
TOS/MT usable | | ,200,Nat'l_Echo_Coor,Concord_
features. | o | ,201,EchoList_Coord,Toms_Rive
| |
| /\ /\/\/\/\/\ /\/\/\ /\ /\/
\/ \/ \/ \ / \/
\/
ParseLst 1.52 - March 12, 1993
TABLE OF CONTENTS
INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . 1
NOTICE . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
OPERATION . . . . . . . . . . . . . . . . . . . . . . . . . 1
CONFIGURATION FILE . . . . . . . . . . . . . . . . . . . . . 2
Node . . . . . . . . . . . . . . . . . . . . . . . . . 2
Country . . . . . . . . . . . . . . . . . . . . . . . . 3
Complete . . . . . . . . . . . . . . . . . . . . . . . 3
Gated . . . . . . . . . . . . . . . . . . . . . . . . . 3
UseZone . . . . . . . . . . . . . . . . . . . . . . . . 3
Version6 . . . . . . . . . . . . . . . . . . . . . . . 3
SmallIndex . . . . . . . . . . . . . . . . . . . . . . 3
Nodelist . . . . . . . . . . . . . . . . . . . . . . . 4
NoNodelist . . . . . . . . . . . . . . . . . . . . . . 4
UserList . . . . . . . . . . . . . . . . . . . . . . . 4
InterList . . . . . . . . . . . . . . . . . . . . . . . 4
NoUserList . . . . . . . . . . . . . . . . . . . . . . 4
FidoTxt . . . . . . . . . . . . . . . . . . . . . . . . 4
FidoPrn . . . . . . . . . . . . . . . . . . . . . . . . 4
NoFidoList . . . . . . . . . . . . . . . . . . . . . . 4
Report . . . . . . . . . . . . . . . . . . . . . . . . 5
NoReport . . . . . . . . . . . . . . . . . . . . . . . 5
Comments . . . . . . . . . . . . . . . . . . . . . . . 5
NoComments . . . . . . . . . . . . . . . . . . . . . . 5
Dash . . . . . . . . . . . . . . . . . . . . . . . . . 5
NoDash . . . . . . . . . . . . . . . . . . . . . . . . 5
Route . . . . . . . . . . . . . . . . . . . . . . . . . 5
NoRoute . . . . . . . . . . . . . . . . . . . . . . . . 5
MaxBaud . . . . . . . . . . . . . . . . . . . . . . . . 5
MyList . . . . . . . . . . . . . . . . . . . . . . . . 5
PvtList . . . . . . . . . . . . . . . . . . . . . . . . 5
Password . . . . . . . . . . . . . . . . . . . . . . . 6
Phone . . . . . . . . . . . . . . . . . . . . . . . . . 6
Baud . . . . . . . . . . . . . . . . . . . . . . . . . 7
CM . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Dial . . . . . . . . . . . . . . . . . . . . . . . . . 7
Cost . . . . . . . . . . . . . . . . . . . . . . . . . 10
Include . . . . . . . . . . . . . . . . . . . . . . . . 11
NODELIST GENERATION FOR YOUR SYSTEM . . . . . . . . . . . . 11
COMMAND LINE PARAMETERS . . . . . . . . . . . . . . . . . . 12
PRODUCT SUPPORT . . . . . . . . . . . . . . . . . . . . . . 13
i
ParseLst 1.52 - March 12, 1993
INTRODUCTION
ParseLst is a program for processing a FidoNet, or other fidonet
compatible nodelist. ParseLst uses a control file to process the
information contained in a raw, "St. Louis" nodelist, and turn
the information into a form usable by several FidoNet compatible
BBS and mailer packages, including BinkleyTerm, Fidodoor, and
QuickBBS/ST.
ParseLst is capable of producing (Version 6) nodelist files for
use with BinkleyTerm 3.0 and above, and 'SmallIndex' index files
for use with Fidodoor and future BinkleyTerm versions.
ParseLst provides complete one-step processing of a FidoNet-type
nodelist into a form usable by a given BBS or mailer package.
This functionality includes updating the nodelist based on
information provided by NODEDIFF update files, distributed weekly
within FidoNet.
NOTICE
ParseLst is not supplied with any sort of guarantee. You use
ParseLst at your own risk.
The following names are either trademarks or the work of the
individuals and/or companies shown:
FidoNet - Tom Jennings and Fido Software
Opus-CBCS - Wynn Wagner
RouteGen, XlatList, SEAdog - Thom Henderson and System
Enhancement Associates, Inc.
TBBS - Phil Becker, eSoft, Inc.
QuickBBS - Adam Hudson
OPERATION
ParseLst requires a configuration file, i.e. PARSELST.CFG, to be
available to the program at run-time. This file has in it the
various control parameters required to customize the output of
ParseLst to your specifications.
When invoked, ParseLst will search the current directory for
nodediff files (i.e NODEDIFF.nnn) whose julian date is one week
later than the latest numbered NODELIST.nnn file. The "nnn" is
three digits that correspond to the julian date when the NODELIST
or NODEDIFF file was produced. If such a NODEDIFF exists,
ParseLst will apply the changes to the NODELIST, and create a new
nodelist file (i.e. NODELIST.nnn) with the same number as the
NODEDIFF used for the update.
1
ParseLst 1.52 - March 12, 1993
ParseLst will produce various output as directed by the
configuration file. Although ParseLst can produce the familiar
NODELIST.BBS file of other nodelist processors, the user will
usually desire finished, ready-to-use nodelist files. ParseLst
can produce these compiled nodelist files:
Opus Version 6 NODELIST.DAT, NODELIST.IDX
SmallIndex NODELIST.ADR, NODELIST.NAM
ParseLst can also produce special supplemental nodelist data
files to be used with BinkleyTerm when the master nodelist in use
does not contain complete information.
ParseLst is different from some other nodelist processors, in
that it will NEVER output an "unpublished" node. Instead,
ParseLst substitutes the information for the unpublished node's
host (phone number, baud rate, flags, etc.). If the unpublished
number is for an independent, the node is omitted from the final
list - no mail can be sent to an independent node without the
proper phone number. This way, the mail will always go out (even
crash mail on systems that support the nodelist flags) without
problems.
CONFIGURATION FILE
In this section, we describe the configuration file options
available for ParseLst.
In many local nets within FidoNet, ParseLst control files are
"shared" among Sysops. Since the control files can be rather
complicated and lengthy, it might be wise to check with other
Sysops in your area to see if they can supply you with a working
ParseLst control file. Then all you'll need to do is customize
the control file for your application, and run the program.
The options are explained here for reference. NOTE: ParseLst
for TOS/MultiTOS DOES NOT support the following parameters:
Addr, Index, Sindex, NoIndex, CleanUp, Ozone, Igate, Ogate,
Gate, Hub, PubList, Points, Version5, TBBSList, QuickBBS, or
Binkley
Note also that the names of the various parameters are shown as
they are for visual clarity. In practice, the configuration file
is NOT case sensitive. Items in square brackets ([]) are
optional.
Node [<zone>:]<net>/<node>
Example: Node 1:3000/45
2
ParseLst 1.52 - March 12, 1993
This informs ParseLst where you're located. This is a full
network address. In the example above, "1" is the zone, "3000"
is the net, and "45" is the node. If the zone number is left
out, the resulting nodelist will not have zones present.
Instead, the appearances of the ZONE keyword will be converted to
the REGION keyword.
Country <country>
Example: Country 1
This tells ParseLst what country you're in. In the various
dialing and cost tables, this entry defines what would qualify as
an "international" call. For the United States, "1" is the
correct entry, and is the default value.
Complete <-- Default
Gated
This tells ParseLst how much zone information to include in its
output files. 'Complete' will place node information from ALL
zones in the raw nodelist into any ParseLst output. 'Gated' will
place node information from YOUR ZONE ONLY in the raw nodelist
into any ParseLst output.
UseZone
This tells ParseLst to keep the ZONE keyword as it appears in the
raw nodelist in the proper place inside the NODELIST.BBS file, if
generated.
If NOT used, the ZONE keyword will be replaced with the keyword
REGION in the resulting NODELIST.BBS file.
If the 'NoNodelist' statement is used in PARSELST.CFG, this
statement will have no effect.
Version6
SmallIndex
These options tell ParseLst to directly produce compiled nodelist
output. 'Version6' will produce NODELIST.IDX and NODELIST.DAT
files. These are compatible with BinkleyTerm 3.0 and later.
'SmallIndex' will produce NODELIST.ADR and NODELIST.NAM files.
These are compatible with Fidodoor 3.2.7 and later, and future
Binkleyterm versions.
Note that one or more of these options can be used simultaneously
to produce output of multiple types. The format of NODELIST.IDX
3
ParseLst 1.52 - March 12, 1993
is the same in all cases, and can used simultaneously. The
default is not to generate any of these files.
Nodelist
NoNodelist <-- Default (Changed in ver 1.50)
This tells ParseLst whether or not to output a NODELIST.BBS file
as the result of nodelist processing. If you're using the
options explained above for processing to a compiled nodelist
format you probably will not need the NODELIST.BBS file at all.
UserList
InterList
NoUserList <-- Default
These options inform ParseLst to create (or not to create)
various listings of Sysops in the raw nodelist.
'UserList' will generate a file called FIDOUSER.LST that contains
the names and node addresses of the Sysops in your zone.
'InterList' will generate a file called FIDOUSER.LST that
contains the names and node addresses of ALL the Sysops in ALL
zones.
'NoUserList' will generate no such listing at all.
The default value is 'NoUserList.' Normally, this list will be
sorted by an internal qsort route. However, if memory is short,
ParseLst will attempt to call QSORT in order to complete the
processing of FIDOUSER.LST if you have one of the options
enabled. If FIDOUSER.LST is specified, then a program conforming
to the following command line must be provided:
QSort FIDOUSER.$$1 /+1:41 /-61:5 /-41:13 /+55:6
Where each field is defined by /osc:nc where o=+ (ascending) or -
(descending) and sc=starting col, nc=number of cols.
FidoTxt
FidoPrn
NoFidoList <-- Default
This tells ParseLst whether or not to produce a human readable
nodelist report. 'FidoTxt' produces an 80-column version of the
report, NODELIST.TXT. 'FidoPrn' produces a 132-column version of
the report NODELIST.PRN. 'NoFidoList' is the default value, and
tells ParseLst not to produce any such report.
4
ParseLst 1.52 - March 12, 1993
Report <-- Default
NoReport
This tells ParseLst whether or not to display a report outlining
the number of nets, nodes and other information that the program
has processed. Output can be redirected at the ParseLst command
line to a printer or file.
Comments
NoComments <-- Default
This tells ParseLst whether or not to display the comments in the
raw nodelist (comments frequently contain timely information from
the Zone Coordinator). Output can be redirected at the ParseLst
command line to a printer or file.
Dash <-- Default
NoDash
This tells ParseLst whether or not to retain the hyphens found in
nodelist telephone number entries. Leaving them out saves some
space in the output file(s) that ParseLst may produce. Some
modems also have limitations on the length of the dial string
which may necessitate the use of the 'NoDash' option.
Route
NoRoute <-- Default
This tells ParseLst whether or not to output a data file for use
by System Enhancement Associates' RouteGen program. The name of
the data file will be NODELIST.FON if this option is enabled.
MaxBaud <baud>
Example: MaxBaud 2400
This tells ParseLst the maximum baud rate you're capable of
supporting. Baud rates in the nodelist that are higher than this
value are changed to it in ParseLst's output.
MyList <filename>
PvtList <filename>
Example: PvtList mylist.lst
These options tell ParseLst the names of raw nodelist files that
are to be processed with the primary nodelist. The designated
nodelists must be in the same format as the primary list
(following FidoNet specifications). You may use multiple
'MyList' and 'PvtList' entries in the configuration file if
5
ParseLst 1.52 - March 12, 1993
desired. The two options work the same way, except:
When 'MyList' is used, information about the list is included in
the reports generated by ParseLst.
When 'PvtList' is used, information about the list is NOT
included in the reports generated by ParseLst.
ParseLst will not search for a "latest" listing if these options
are used, therefore, include a file extension when using either
of these options. If you are using the 'SmallIndex' file format,
make sure to call your private list nnnnPRIV.LST, where nnnn is
the network four-letter code (i.e. FIDOPRIV.LST).
Password [<zone>:]<net>/<node> <password>
Example: Password 1:3000/45 mypass
Used in conjunction with the 'Version6' option, this allows the
insertion of a password in the nodelist entry for a given node.
The password is used by BinkleyTerm to password protect a network
session. This option has no effect on the NODELIST.BBS file, if
one is being produced by ParseLst.
You must specify a node address and the password to be associated
with that node.
The remote system must also have implemented the password
feature, and the passwords must match in order for the session to
be successful.
Refer to the documentation for your respective mailer or BBS for
more information. This statement only applies when the
'Version6', statement is used.
Phone [<zone>:]<net>/<node> <number>
Example: Phone 1:3000/45 1-303-555-9876
This tells ParseLst to substitute the phone number given in lieu
of the one in the nodelist, for the node address given. You must
give the replacement telephone number in its full form to allow
other ParseLst configuration options to work correctly.
In the example above, regardless of the phone number listed for
3000/45 in the nodelist, 1-303-555-9876 will be the phone number
included for this node in any ParseLst output files.
This is handy for use with "unlisted" private nodes (when you
know their phone number). This statement only applies when the
6
ParseLst 1.52 - March 12, 1993
'Version6', statement is used.
Baud [<zone>:]<net>/<node> <baud_rate>
Example: Baud 1:3000/45 2400
This tell ParseLst to substitute the baud rate given in lieu of
the one in the nodelist, for the node address given.
In the example above, regardless of the baud rate listed for
3000/45 in the nodelist, 2400 will be the baud rate included for
this node in any ParseLst output files. This statement only
applies when the 'Version6, statement is used.
CM [<zone>:]<net>/<node>
Example: CM 2:500/1
This tells ParseLst to mark a node as #CM (continuous-mail
capable, or "crashable"), even though it may not be listed as
such in the raw nodelist.
This statement only applies when the 'Version6', statement is
used.
This option is primarily intended for temporary use where a node
may not be listed correctly in the raw nodelist. Use it
carefully...trying to send mail during non-mail hours to systems
that may not be able to accept it is inviting trouble.
Dial [<domestic>][<international>]
Example: Dial 10777- 011-
1-303-989- 989- ; Local Dialing Area
1-303-1- ; In-State, Non-Local
1-913-/-010 ; Special Case
End
The 'Dial' statement begins a dial table, which is ended by an
'End' statement. The 'Dial' statement itself can take two
parameters, the first of which is what is to be prepended to
domestic telephone numbers, the second what is to be prepended to
international telephone numbers. These parameters are defaults,
and are used when none of the dial table entries match a given
telephone number. Subsequent entries after the 'Dial' statement
(but before the 'End' statement) are used to change telephone
number entries in the nodelist during processing. The parameter
on the left is the entry in the nodelist to match and replace,
the one on the right is the parameter to change the matched to.
7
ParseLst 1.52 - March 12, 1993
The table entries (as well as the 'Dial' statement parameters)
take the form:
<prefix>
<prefix/suffix>
/<suffix>
/
Prefix entries deal with the beginning of the phone number,
suffix entries refer to the end of the phone number.
If a given phone number does not match any item in the dial
table, then the default items in the DIAL statement are applied.
In the example above, "10777-" would be added to the beginning of
any domestic telephone number that does not match a dial table
entry; "011-" would be added to international numbers that do not
match an entry. Note that since no forward slash was used (/),
it is assumed that the entry will be a prefix, and is added to
the beginning of the number.
In the dial table, the left argument is used to find a match, the
right argument REPLACES that match. In other words, the first
argument means "match this and strip it from matching entries."
The second argument means "add this to matching entries." Any
combination of prefix, suffix, or both can be used.
Above, the first dial table entry (labeled "Local Dialing Area")
looks for any telephone numbers that begin with "1-303-989-" and
changes the entry to begin with just "989-" instead. In the
third entry, telephone numbers that begin with "1-913-" will have
that prefix stripped, and the telephone number will have "-010"
appended to the end.
Some examples:
1-213-555-1234
This number does not match any dial table entries, and would
be changed to 10777-1-213-555-1234. The default (on the
'Dial' line) says to add "10777-" to any domestic telephone
number that doesn't match a dial table entry. An entry like
this might be used as it is here, to add a carrier access
code to long distance numbers.
Had this number been international number, "011-" would have
been added to the beginning by default.
1-303-989-0000
This number would be changed to 989-0000. The first
8
ParseLst 1.52 - March 12, 1993
portion of this phone number, 1-303-989-, matches a dial
table entry. The entry says to change matching prefixes to
the second parameter, in this case, simply 989-. An entry
like this is typically used for other local nodes, since you
don't need to dial "1" or the area code for local numbers.
You'd need an entry like this for EACH prefix in your local
calling area. Note that the dial table entries are processed
in order. This telephone number also matches the second
dial table entry in the example list, but since it already
matched a previous entry, subsequent matches are ignored.
1-303-245-0000
This number would be changed to 1-245-0000. The first
portion of this phone number, 1-303-, matches a dial table
entry. The entry says to change the prefix shown to simply
1-. Typically, an entry like this would follow the local
calling area entries described above.
1-913-555-9876
This number would be changed to 555-9876-010. The prefix of
this number matches a dial table entry. The entry says to
replace the prefix with the given suffix (the "/" character
indicates a suffix). This particular entry has no practical
use, but it demonstrates that the first portion of a dial
table entry means to "strip" that from matching entries, and
replace it with the information shown in the last portion of
the dial table entry. Any combination of prefix, suffix or
both can be used.
This statement only applies when the 'Version6', statement
is used.
Cost [<domestic>][<international>]
Example: Cost 25 325
1-203-17 ;Connecticut
1-204-100 ;Manitoba Canada
1-214-17 ;Texas
1-303-230- 0 ;Local, Lakewood
1-303-279- 0 ;Local, Golden
1-303-340- 0 ;Local, Aurora
1-303-80 ;Colorado, Non-Local
1-602-20 ;Arizona
33-56-133 ;Bordeaux, France
852- 238 ;Hong Kong
354- 238 ;Iceland
End
9
ParseLst 1.52 - March 12, 1993
This statement marks the beginning of a cost table, which is
ended with the 'End' statement. The cost table is used to set
the cost of dialing out to various areas that might be found in
the nodelist.
The 'Cost' statement itself can take up to two arguments, the
first being a default domestic cost, and the second being a
default international cost. These are used if no matches are
found within the cost table for a given nodelist entry.
The entries between the 'Cost' statement and the 'End' statement
make up the cost table, and define the amount in the lowest
denomination of money in your area (in the United States and
Canada, this would be cents, for example).
Like the dial table, the first entry is used to find matches in
the nodelist. The second entry is assigned as the cost for
matching entries. The cost table entries are used in the order
that they appear in the table. Once a match is found, no further
matches are attempted.
Typically, the dial table lists domestic prefixes first,
including a section devoted to your local calling area. The
latter portion is devoted to international prefixes, if
applicable. The sample table above is for a node in Denver,
Colorado. The sample, as well as your own cost table, will
probably be much, much bigger.
This statement only applies when the 'Version6', or 'SmallIndex'
statement is used.
Some examples:
1-213-555-1234
This entry, a domestic call, does not match any of the cost
table entries. The cost assigned to this entry is 25, the
default domestic cost.
33-60-122331
This entry, an international call, does not match any of the
cost table entries. The cost assigned to this entry is 325,
the default international cost.
1-303-228-1111
This entry is in the same state as the node using the cost
table, but it is not one of the entries shown as being
10
ParseLst 1.52 - March 12, 1993
listed in the local calling area. It is assigned a cost of
80.
1-303-279-0000
This number matches one of the entries listed as being
local, and is assigned a 0 cost.
Include <filename>
Example: Include altcmnds.txt
This tells ParseLst to stop reading commands from the current
file, and start reading them from the beginning of the named
files. Once the end of the file is reached, ParseLst will begin
reading commands from the initial file again, starting at the
command following the 'Include' statement that caused it to
branch.
NODELIST GENERATION FOR YOUR SYSTEM
The following table illustrates the statements that should be
used to generate nodelist data files for listed systems. Note
that in most cases, ParseLst can create nodelist data files for
more than one system simultaneously.
System Statements to Use
------------------ ---------------------------------------------
BinkleyTerm 3.00+ NoNodelist Version6 Complete UseZone
BinkleyTerm ?.??+ SmallIndex Complete
NOTE! The 'Gated' keyword may be used by ANY system to create a
smaller finished nodelist that features only those nodes in your
zone (and some administrative nodes in other zones).
11
ParseLst 1.52 - March 12, 1993
COMMAND LINE PARAMETERS
ParseLst offers a selection of command line options. Note that
the items in angle brackets below, <baud> and <ATAR> excepted,
represent a complete drive, path and filename designation.
-b<baud>
Use <baud> in place of the rate shown with the 'Baud'
configuration file statement.
-c<config>
Use <config> as the ParseLst configuration file.
-e
Let EditNL do the updating of the nodelist. EditNL must be
available in the current directory.
-n<nodelist>
Use <nodelist> as the nodelist to be processed.
-m<mylist>
Use <mylist> as an additional nodelist. This works the
same as the 'MyList' configuration file statement.
-o<ATAR>
The -o parameter tells Parselst to substitute ATAR (always
use four (4) letters after the -o option) for all filenames
such as FIDOUSER, NODELIST, etc. This allows ParseLst to
compile other fidonet-compatible network nodelists.
-p<pvtlist>
Use <pvtlist> as an additional private nodelist. This works
the same as the 'PvtList' configuration file statement.
-w
Use this to cause Parselst to pause when it has completed,
so that you may view the results.
-z<1-9>
Use a zone-specific nodelist (e.g. Z1-LIST) instead of the
normal NODELIST. The optional parameter (a number of 1-9)
12
ParseLst 1.52 - March 12, 1993
allows use of this feature outside of zone 1, which is the
default.
PRODUCT SUPPORT
Since ParseLst is "freely available," direct product support, per
se, is not available. If you have problems or questions with
ParseLst, you are welcome to send an inquiry (TOS/MultiTOS
versions only) to:
Bryan Hall, FidoNet 1:206/2703
FIDOdoor BBS, Vandenberg AFB, California, USA
(805)-734-4742
Inquiries will be answered on a time-available basis only.
Flames are never dignified with a response.
Thanks for using ParseLst! Enjoy!
13